// 下面代码中 a 在什么情况下会打印 true？
// var a ="?"
// if(a == 1 && a == 2 && a == 3){
//  	console.log(1);
// }

// 1、由于参与比较的是一个数组和一个数字，JavaScript会尝试将数组转换为一个原始值。
// 2、对于数组，它的默认字符串表示是其元素转换为字符串并用逗号分隔的结果。因此，[1] 的字符串表示是 "1"。
// 3、接着，这个字符串 "1" 会被转换为数值（如果可以）。在这种情况下，"1" 可以被解析为数字 1。
// 4、现在，比较变成了 1 == 1。
var a =[1,2,3]
a.toString=a.shift//只是定义他的方法 但并没有调用
if(a == 1 && a == 2 && a == 3){
 	console.log(1);
}
console.log([1]==1);
